package com.googlecode.afx.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * In case it is not possible to bind one JavaBean property to one component,
 * this annotation can be used to establish a custom binding between a
 * JavaBean and an arbitrary property of one component. This comes handy
 * in case the component exposes more than one property that is interesting
 * for binding. 
 * 
 * @author MartinKoster
 *
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface AFXBinding {
	
	public String path() default "";
	
	public String componentId();
	
	public String propertyMethod();
	
	public Class<?> elementType() default Object.class;
}
